package com.atguigu.tingshu.account.service;

import com.atguigu.tingshu.common.result.Result;
import com.atguigu.tingshu.model.account.UserAccount;
import com.atguigu.tingshu.vo.account.AccountLockResultVo;
import com.atguigu.tingshu.vo.account.AccountLockVo;
import com.baomidou.mybatisplus.extension.service.IService;

import java.math.BigDecimal;

public interface UserAccountService extends IService<UserAccount> {


    /*
     * @description: TODO 检验并且锁定账户余额
     * @author: yyj
     * @date: 2025-02-11
    */
    Result<AccountLockResultVo> checkAndLockAccount(AccountLockVo accountLockVo);

    /*
     * @description: TODO 账户余额
     * @author: yyj
     * @date: 2025-02-12
    */
    /*
     * @description: TODO 账户流水
     * @author: yyj
     * @date: 2025-02-13
     */
    void log(Long userId, String s, String number, BigDecimal amount, String orderNo);

    BigDecimal getAvailableAmount();
}
